package com.gaofei.jpa.entity;

import lombok.Data;
import org.aspectj.weaver.ast.Or;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author : gaofee
 * @date : 14:28 2021/5/24
 * @码云地址 : https://gitee.com/itgaofee
 *
 * spring-data-es
 * spirng-data-jpa
 */
@Data
@Entity  //让jpa知道该实体类就是和数据库对应的实体类
@Table(name = "tb_user")
public class UserEntity implements Serializable {

    @Id //声明表的主键
    /** 用于标注主键的生成策略，通过strategy 属性指定。**/
    /** JPA 自动选择一个最适合底层数据库的主键生成策略**/
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    // 用户名
    @Column(name = "user_name",length = 25)
    private String username;
    // 密码
    private String password;
    // 电话
    private String phone;
    // 创建时间
    @Temporal(TemporalType.DATE)
    private Date created;

    @Transient  //忽略该字段
    private String ss;

    //一个用户对应多个订单
//    @OneToMany(cascade = CascadeType.ALL,fetch = FetchType.EAGER,mappedBy = "userEntity")
    @Transient
    private List<OrderEntity> orderEntities;

}
